package com.rs.common.utils.constant;

/**
 * 静态常量配置
 * @author hedonglin
 * @company 睿思科技
 * @email 1048791780@qq.com
 * @date 2017年12月20
 */
public class Constant {
    /** 开发人员ID */
    public static final int DEVELOPER = 1;

    /**
     * 每条记录的基本状态
     * 0正常 1冻结   -1 删除
     */
    public enum BaseStatus {
        /**
         * 正常
         */
        NORMAL(0),
        /**
         * 冻结
         */
        FROZEN(1),
        /**
         * 删除
         */
        DELETE(-1);

        private int value;

        private BaseStatus(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

    /**
     * 审核状态
     * 1待审核  0-审核通过   2审核不通过
     */
    public enum ReviewStatus {
        /**
         * 待审核
         */
        REVIEW_WAIT(0),
        /**
         * 审核通过
         */
        REVIEW_PASS(1),
        /**
         * 审核不通过
         */
        REVIEW_NOT_PASS(2);

        private int value;

        private ReviewStatus(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

    /**
     * 资源类型
     * 0 菜单  1按钮  2其他
     */
    public enum MenuType {
        /**
         * 目录
         */
        MENU(0),
        /**
         * 菜单
         */
        BUTTON(1),
        /**
         * 按钮
         */
        OTHER(2);

        private int value;

        private MenuType(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

    /**
     * 资源种类
     * 0 模块  1控制器  2函数
     */
    public enum MenuKind {
        /**
         * 模块
         */
        MODULAR(0),
        /**
         * 控制器
         */
        CONTROLLER(1),
        /**
         * 函数
         */
        FUNCTION(2);

        private int value;

        private MenuKind(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }


    /**
     * 用户登录允许方式，账号，电话，邮箱
     */
    public enum LoginType {
        /**
         * 账号
         */
        USER_ACCOUNT("account"),
        /**
         * 手机号码
         */
        USER_MOBILE("mobile"),
        /**
         * 邮箱
         */
        USER_EMAIL("email");

        private String value;

        private LoginType(String value) {
            this.value = value;
        }

        public String getValue() {
            return value;
        }
    }



}
